import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'

// 全局样式
import './assets/scss/global.scss'

import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'

import http from './api/config'
// 页面加载进度条
import NProgress from 'nprogress'
import 'nprogress/nprogress.css'

// 路由进入前
router.beforeEach((to, from, next) => {
  // 每次切换页面时，调用进度条

  // 判断该路由是否需要登录权限
  if (to.meta.requireAuth) {
    // 判断本地是否存在登录信息
    if (sessionStorage.getItem('StaffInfo')) {
      NProgress.start()
      next()
    } else {
      // 未登录,跳转到登陆页面
      next({ path: '/login' })
    }
  } else {
    NProgress.start()
    next()
  }
})
// 当路由进入后：关闭进度条
router.afterEach(() => {
  // 在即将进入新的页面组件前，关闭掉进度条
  NProgress.done()
})

Vue.prototype.$http = http
Vue.use(ElementUI)

Vue.config.productionTip = false

new Vue({
  router,
  store,
  render: h => h(App)
}).$mount('#app')
